IP packet priority control system

ABSTRACT

An IP packet priority control system of the present invention transmits and receives an IP packet among a terminal on the Internet, a server, and a router operating under program control, and includes means for setting priority in an IP packet on a session-by-session basis in order to realize an IP packet priority control system which distributes load to hardware, performs priority control on a session-by-session basis, and causes no interference between images and control information. The session comprises a voice call, image data, and a JAVA applet of a browser. The IP packet priority is set such that the priority of control information of the voice call is high, the priority of the image data of the browser is low, and the priority of the JAVA applet is intermediate. The means for setting priority in an IP packet performs setting on a session-by-session basis in which a terminal or a server adds priority parameter passing to a standard API rather than setting on a port-by-port basis in which a router prioritizes control information with QoS control.

BACKGROUND OF THE INVENTION

[0001] 1. Field of the Invention

[0002] The present invention relates to an IP (Internet Protocol) packet priority control system on the Internet.

[0003] 2. Description of the Related Art

[0004] Recently, the integration of data and sound is rapidly proceeding on IP networks for Internet terminals.

[0005] In the IP networks, image data is frequently handled steadily for browsing Web pages with browsers. The image data is included in an HTTP (Hypertext Transfer Protocol) transaction which is likely to substantially occupy a communication band. Thus, control information vulnerable to delay and sound data requiring real time processing exhibit phenomena such as data delay, fluctuations, data loss and the like on the networks due to the occupation of the communication band by the image data.

[0006] For example, these phenomena occur more prominently on wired networks in WAN (Wide Area Network) lines for connecting LANs (Local Area Network) as compared with LAN lines. This is because high cost of the WAN line for connecting LANs per band makes it difficult to ensure a sufficient band. For this reason, it is common practice to put high priority on control information with QoS control in a router connected to an exit of the WAN line.

[0007] On wireless networks, cellular phones play increasing roles as Internet terminals and image data is handled more frequently. However, a transmission speed based on current techniques has reached the limit to cause the aforementioned phenomena prominently at an exit of a wireless communication path where a sufficient band is difficult to ensure.

[0008] The prior art has problems as below.

[0009] A first problem is that while the mounting of a CPU of high performance is required in a cellular phone, it is difficult to mount such a CPU of high performance due to desires for a smaller size, lighter weight, and low current consumption of the cellular phone.

[0010] A second problem is that priority setting is realized only on an application-by-application basis in existing devices using Diff-serv (Differentiated services). This is because the implementation in one terminal is not considered.

SUMMARY OF THE INVENTION

[0011] It is an object of the present invention to provide an IP packet priority control system which performs priority control on a session-by-session basis by distributing load to hardware to cause no interference between images and control information.

[0012] The IP packet priority control system of the present invention for transmitting and receiving an IP packet among a terminal, a server, and a router on the Internet operating under program control is characterized by comprising means for setting priority in the IP packet on a session-by-session basis.

[0013] The sessions comprise a voice call, image data, and a JAVA applet of a browser.

[0014] The priority in the IP packet is set such that the priority of control information of the voice call is high, the priority of the image data of the browser is low, and the priority of the JAVA applet is intermediate between the control information and the image data.

[0015] The means for setting priority in an IP packet is characterized by performing setting on a session-by-session basis in which a terminal or a server adds priority parameter passing to a standard API (Application Programming Interface) rather than on a port-by-port basis in which a router puts priority on control information with QoS control.

[0016] The means for setting priority in an IP packet is characterized by performing setting such that, in a server including an application layer, a SOCKET layer, a TCP/UDP layer, an IP layer, and an interface layer, the SOCKET adds priority parameter passing to a standard API for use on the Internet.

[0017] The present invention proposes an interface for passing a priority parameter including priority information, a port number, and IP address from the application, in contrast with a conventional Diff-serv which assigns priority to an IP packet.

[0018] The priority parameter passing in Diff-serv is performed at an interface position changed from conventional QoS priority on a port-by-port basis to QoS priority on a session-by-session basis of the present invention as shown in FIG. 1 showing a configuration of a terminal and a server for use on the Internet.

[0019] According to the present invention, Diff-serv control can be performed on a session-by-session basis by distributing load to hardware even with a CPU of low performance used in a cellular phone. The control enables communication without interference between images and control information.

[0020] According to the present invention, a first effect is to allow communication without interference by putting a higher priority on control information vulnerable to delay than image data which is likely to substantially occupy a communication band. This is because setting can be performed such that the priority of control information of a voice call is high, the priority of image data of a browser is low, and the priority of a JAVA applet is intermediate between the control information and the image data.

[0021] A second effect is to allow Diff-serv control on a session-by-session basis even with a low-performance CPU. This is because Diff-serve control is performed not by software processing with a CPU but by distributing load to hardware processing faster than a CPU.

BRIEF DESCRIPTION OF THE DRAWINGS

[0022]FIG. 1 shows an embodiment of the present invention comprising a terminal for use on the Internet, a server, and a router, and further illustrates an IP packet transmitted and received on an IP network, an interface position of conventional QoS priority, and an interface position of QoS priority of the present invention where QoS priority in an IP packet is set; and

[0023]FIG. 2 shows a terminal and a router of the embodiment for use on the Internet, and an IP packet transmitted and received between the terminal and the router, for illustrating QoS transmission on a session-by-session basis.

DESCRIPTION OF THE PREFERRED EMBODIMENT

[0024] Next, an embodiment of the present invention is described in detail with reference to the drawings.

[0025] Referring to FIG. 1, an embodiment of the present invention comprises terminal 100 operating under program control for use on the Internet, server 200, and router 300. FIG. 1 also shows IP packet 400 transmitted and received on an IP network, conventional QoS priority 501, and QoS priority 502 of the present invention indicating interface positions where QoS priority in IP packet 400 is set.

[0026] Terminal 100 includes voice call 110 of a client application, browser 120, port number A 131, port number B 132, port number C 133 used from the application, and IP address X 141. Voice call 110 of the application includes control information 111 treated as information. Browser 120 of the application includes image data 121 treated as information and JAVA applet 122.

[0027] Server 200 includes voice call server 210 of a server application, HTTP server 220, port number E 231 and port number F 232 used from the application, and IP address Y 241. Voice call server 210 of the application includes control information 211 treated as information. HTTP server 220 of the application includes image data 221 treated as information and JAVA applet 222.

[0028] Router 300 relays IP packet 400 between terminal 100 and server 200.

[0029] IP packet 400 includes JAVA applet 412 for the IP packet of information including priority, image data 411, and control information 413.

[0030] They are operated as follows.

[0031] For voice call 110, control information 111 is acquired from control information 211 of voice call server 210 by using control information 413.

[0032] For browser 120, image data 121 is acquired from image data 221 of HTTP server 220 by using image data 411, and JAVA applet 122 is acquired from JAVA applet 222 of HTTP server 220 by using JAVA applet 412.

[0033] Next, the entire operation in the embodiment is described in detail with reference to FIG. 1. First, in terminal 100, priority in an IP packet is passed from QoS priority 502 of the present invention to three sessions of voice call 110, image data 121, and JAVA applet 122 of browser 120, and information included in IP packet 400 is transmitted and received in accordance with the priority in the IP packet as follows.

[0034] The session of voice call 110 transmits and receives control information 413 by using port number E231 of the server from port number A 131.

[0035] One session of browser 120 transmits and receives JAVA applet 412 by using port number F 232 of the same HTTP server 220 as image data 411 from port number C 133.

[0036] The other session of browser 120 transmits and receives image data 411 by using port number F 232 of HTTP server 220 from port number B 132.

[0037] Next, the embodiment of the present invention is described with reference to FIG. 2 in detail for the transmission and reception of an IP packet between the terminal and the router. Referring to FIG. 2, terminal 600 operating under program control for use on the Internet, router 700, and IP packet 800 transmitted and received between the terminal and the router in the embodiment are shown.

[0038] Terminal 600 includes application 601, SOCKET (supporting QoS) 602, TCP/UDP (supporting QoS) 603, IP (supporting QoS) 604, and interface layer 605.

[0039] Router 700 includes IP 701 and interface layer 702. IP packet 800 includes IP header 810 and TCP/UDP packet 820. IP header 810 includes priority specification field 811.

[0040] They are operated as follows.

[0041] Application 601 is an application for a browser or voice call and transmits IP packet 800 to a terminal ahead of router 700.

[0042] SOCKET (supporting QoS) 602 is a standard API for use on the Internet plus the function of passing a priority parameter, and passes data and a priority parameter from application 601 to TCP/UDP (supporting QoS) 603.

[0043] TCP/UDP (supporting QoS) 603 is a standard TCP/UDP protocol for use on the Internet plus the function of passing a priority parameter, and passes the data and priority parameter from SOCKET (supporting QoS) 602 to IP (supporting QoS) 604.

[0044] IP (supporting QoS) 604 is a standard IP protocol for use on the Internet plus the function of passing a priority parameter, and sets the data from TCP/UDP (supporting QoS) 603 in TCP/UDP packet 820, sets the priority parameter in priority specification field 811 of IP header 810, and passes it to interface layer 605.

[0045] Interface layer 605 transmits IP packet 800 from IP (supporting QoS) 604. 

What is claimed is:
 1. An IP packet priority control system comprising: the Internet operating under program control; a terminal, a server, and a router connected to said Internet; and means for setting priority in an IP packet on a session-by-session basis, wherein an IP packet is transmitted and received under priority control among said terminal, said server, and said router.
 2. The IP packet priority control system according to claim 1 , wherein said session comprises sessions of a voice call, image data, and a JAVA applet of a browser.
 3. The IP packet priority control system according to claim 1 , wherein the priority in said IP packet is set such that priority of control information of a voice call is high, priority of image data of a browser is low, and priority of a JAVA applet is intermediate between said control information and said image data.
 4. The IP packet priority control system according to claim 1 , wherein said means for setting priority in an IP packet performs setting on a session-by-session basis in which a terminal or a server adds priority parameter passing to a standard API rather than on a port-by-port basis in which a router prioritizes control information with QoS control.
 5. The IP packet priority control system according to claim 1 , wherein said means for setting priority in an IP packet performs setting such that, in a terminal including an application layer, a SOCKET layer, a TCP/UDP layer, an IP layer, and an interface layer, said SOCKET adds priority parameter passing to a standard API for use on the Internet.
 6. The IP packet priority control system according to claim 1 , wherein said means for setting priority in an IP packet performs setting such that, in a server including an application layer, a SOCKET layer, a TCP/UDP layer, an IP layer, and an interface layer, said SOCKET adds priority parameter passing to a standard API for use on the Internet. 